home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekikoh Dennoh Club 1
/
Gekikoh Dennoh Club Vol. 1 (Japan).7z
/
Gekikoh Dennoh Club Vol. 1 (Japan) (Track 1).bin
/
kowin
/
archive
/
apl
/
tvv132.lzh
/
main.c
< prev
next >
Wrap
C/C++ Source or Header
|
1995-04-17
|
2KB
|
82 lines
/*
MicroView.win Copyright 1995 小笠原博之
oga@dgw.yz.yamagata-u.ac.jp
*/
#include "microview.h"
#define DEFFONT 12
#define DEFCOL 80
#define DEFLIN 25
#define DEFTAB 8
int WindowHeapSize= 1024*4;
static T_BUFP BD= {
0, 0,
DEFTAB, DEFTAB-1, DEFCOL, 0,
DEFFONT/2, DEFFONT, DEFFONT,
AttrDefault, AttrDefault&3,
0, 0, 202, 140, DEFCOL*DEFFONT/2+14, DEFLIN*DEFFONT
};
BPopen( file )
char *file;
{
T_BUFP *bp;
if( bp= (void*)malloc( sizeof(T_BUFP) ) ){
int flag;
char path[256];
if( GETENV( "TVVPATH", 0, path ) < 0 )
s_strcpy( path, "." );
*bp= BD;
s_strcpy( bp->title, file );
flag= ReadFile( file, bp, path );
if( flag ){
MV_Open( bp->x, bp->y, bp->h, bp->v, bp );
return TRUE;
}
free( bp );
}else
ConsoleAutoPrint( "tview:HEAP不足\r\n" );
return FALSE;
}
WindowMain( argc, argv )
int argc;
char **argv;
{
argc= AnalyzeArgs( argc, (char**)argv, &BD.x, &BD.y, &BD.h, &BD.v );
for(; --argc ;){
if( **++argv == '-' ){
switch( (*argv)[1] ){
case 't':
BD.tabsize= atoi2(*argv+2);
BD.tabmask= BD.tabsize-1;
break;
case 'a':
BD.attr= atoi2(*argv+2);
BD.backattr= BD.attr & AttrReverse ?
BD.attr & 3 : 0;
break;
case 'c':
BD.maxcol= atoi2(*argv+2);
break;
case 'f':
BD.font_z= BD.font_y= atoi2(*argv+2);
BD.font_x= BD.font_y/2;
BD.h= BD.maxcol*BD.font_x+14;
BD.v= DEFLIN*BD.font_y;
break;
case 'F':
BD.font_z= atoi2(*argv+2);
break;
}
}else
BPopen( *argv );
}
if( !GlobalCount )
WindowSendSignal( WindowProcessID, SignalKill, 0 );
}